package com.craney.aboutPackage
{
	//同一个包中都可见
	public class P1
	{
		internal var p1s:String = "P1 internal";
		
		
		public function P1()
		{
			//可以看到P2和P2中的internal
			//可以看到P12和P12中的internal
						
			var p2:P2 = new P2();
			trace(p2.p2s);
			var p12:P12 = new P12();
			trace(p12.p12s);
		}
		
		public function g():void
		{
			new P12().f();
		}
		
	}
}

import com.craney.aboutPackage.P1;
import com.craney.aboutPackage.P2;
//只有在本文件中可见

class P12
{
	//可以看到P2，但看不到其中的internal
	
	//可以看到P1，但看不到其中的internal
	
	internal var p12s:String = "p12s";
	
	internal function f():void
	{
		var p2:P2 = new P2();
		trace(p2.pub2);
		var p1:P1 = new P1();
	}
	
}